﻿using Futuret.Repositor.Base.Interface;

namespace Futuret.Repositor.Base.Entity;

/// <summary>
///     Author: Riva
///     Date: 2023/7/11 14:34
///     Description:
/// </summary>
public class BaseEntity : BaseKey<Guid>, IBaseEntity, IDeleteFilter
{
    /// <summary>
    ///     CreateUserId
    /// </summary>
    [SugarColumn(ColumnName = "CreateUserId", ColumnDescription = "CreateUserId", IsNullable = true)]
    public Guid? CreateUserId { get; set; }

    /// <summary>
    ///     CreateUserName
    /// </summary>
    [SugarColumn(ColumnName = "CreateUserName", ColumnDescription = "CreateUserName", IsNullable = true)]
    public string? CreateUserName { get; set; }

    /// <summary>
    ///     CreateTime
    /// </summary>
    [SugarColumn(ColumnName = "CreateTime", ColumnDescription = "CreateTime", IsNullable = true)]
    public DateTime? CreateTime { get; set; }

    /// <summary>
    ///     LastEditUserId
    /// </summary>
    [SugarColumn(ColumnName = "LastEditUserId", ColumnDescription = "LastEditUserId", IsNullable = true)]
    public Guid? LastEditUserId { get; set; }

    /// <summary>
    ///     LastEditTime
    /// </summary>
    [SugarColumn(ColumnName = "LastEditTime", ColumnDescription = "LastEditTime", IsNullable = true)]
    public DateTime? LastEditTime { get; set; }

    /// <summary>
    ///     LastEditName
    /// </summary>
    [SugarColumn(ColumnName = "LastEditName", ColumnDescription = "LastEditName", IsNullable = true)]
    public string? LastEditName { get; set; }

    /// <summary>
    ///     IsDelete
    /// </summary>
    [SugarColumn(ColumnName = "IsDelete", ColumnDescription = "IsDelete")]
    public bool IsDelete { get; set; }
}